/*
当前函数执行，形成一个私有作用域A,A的上级作用域是谁，和A在哪里执行的没有关系，和它在
哪里创建（定义）有关系，A在哪里创建的，它的上级作用域就是谁。
*/
var a = 12
function fn() {
    console.log(a) //12
    console.log(arguments.callee) //[Function: fn] 函数本身
    console.log(arguments.callee.caller) //[Function: sum] fn函数执行的宿主环境。
    // 在全局下执行caller的结果是null
}
function sum() {
    var a = 120
    fn()
}
sum() 